#ifndef HWINTERFACE_HPP
#define HWINTERFACE_HPP

/*
 Loads the HW timer with a value that corresponds to the specified microseconds
 and starts the HW timer which will start counting down.

 When the HW timer has counted to zero, it will stop counting.
 HW timer interrupt will be generated and HwTimerIsr() will be called.
*/
void HwTimerStart(unsigned long long int microseconds);

/*
 Stops the HW timer from counting down.
*/
void HwTimerStop(void);

/*
 Returns the time that has passed from system startup in milliseconds.
*/
unsigned int GetMilliseconds(void);

/*
 Returns the time that has passed from system startup in microseconds.
*/
unsigned long long int GetMicroSeconds(void);

#endif // HWINTERFACE_HPP